package cn.gok.manage.web.vo;

import cn.gok.pojo.Order;
import cn.gok.pojo.OrderItem;
import cn.gok.pojo.Shipping;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class OrderDetail2VO {
    private long orderNo;
    private BigDecimal payment;
    private int paymentType;
    private String paymentTypeDesc;
    private int postage;
    private int status;
    private Date paymentTime;
    private Date sendTime;
    private Date endTime;
    private Date closeTime;
    private Date createTime;
    private List<OrderItem> orderItems;
    private int shippingId;
    private String receiverName;
    private List<Shipping> shippings;




    public OrderDetail2VO(long orderNo, BigDecimal payment, int paymentType, int postage, int status, Date paymentTime, Date sendTime, Date endTime, Date closeTime, Date createTime,int shippingId) {
        this.orderNo = orderNo;
        this.payment = payment;
        this.paymentType = paymentType;
        this.paymentTypeDesc = paymentTypeDesc;
        this.postage = postage;
        this.status = status;
        this.paymentTime = paymentTime;
        this.sendTime = sendTime;
        this.endTime = endTime;
        this.closeTime = closeTime;
        this.createTime = createTime;
        this.shippingId = shippingId;
    }

    public OrderDetail2VO() {
    }

    public OrderDetail2VO(OrderItem orderItem) {
        this.orderNo = orderNo;
        this.payment = payment;
        this.paymentType = paymentType;
        this.paymentTypeDesc = paymentTypeDesc;
        this.postage = postage;
        this.status = status;
        this.paymentTime = paymentTime;
        this.sendTime = sendTime;
        this.endTime = endTime;
        this.closeTime = closeTime;
        this.createTime = createTime;
        this.shippingId = shippingId;
    }

    public OrderDetail2VO(Order order) {
        this.orderNo = orderNo;
        this.payment = payment;
        this.paymentType = paymentType;
        this.paymentTypeDesc = paymentTypeDesc;
        this.postage = postage;
        this.status = status;
        this.paymentTime = paymentTime;
        this.sendTime = sendTime;
        this.endTime = endTime;
        this.closeTime = closeTime;
        this.createTime = createTime;
        this.shippingId = shippingId;
    }
}
